home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 July / EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso / earcd / phase5 / ppcrelease / examples / msg6ppc.s < prev    next >
Text File  |  1998-02-21  |  3KB  |  202 lines

  1.  # GNU C 2.7.2.1
  2.  # -O2 -fdefer-pop -fomit-frame-pointer -fcse-follow-jumps -fcse-skip-blocks
  3.  # -fexpensive-optimizations -fthread-jumps -fstrength-reduce -fpeephole
  4.  # -fforce-mem -ffunction-cse -finline -fcaller-saves -fpcc-struct-return
  5.  # -frerun-cse-after-loop -fschedule-insns -fschedule-insns2 -fcommon
  6.  # -fgnu-linker -mpowerpc -mnew-mnemonics
  7.  
  8.     .file    "Msg6PPC.c"
  9. gcc2_compiled.:
  10. .section    .rodata
  11.     .align 2
  12. .LC0:
  13.     .string    "Text sent by PPC processor\n"
  14.     .section    ".text"
  15.     .align 2
  16.     .globl main
  17.     .type     main,@function
  18.     .long 0x407c
  19. main:
  20.     stwu 1,-128(1)
  21.     mflr 0
  22.     stw 25,100(1)
  23.     stw 26,104(1)
  24.     stw 27,108(1)
  25.     stw 28,112(1)
  26.     stw 29,116(1)
  27.     stw 30,120(1)
  28.     stw 31,124(1)
  29.     stw 0,132(1)
  30.     lis 3,0x8002
  31.     ori 3,3,22
  32.     bl PPCGetTaskAttr
  33.     mr 31,3
  34.     lwz 29,4(31)
  35.     li 4,1
  36.     slwi 3,29,2
  37.     bl PPCAllocVec
  38.     mr. 26,3
  39.     bc 12,2,.L40
  40.     lwz 25,0(31)
  41.     cmpwi 1,25,0
  42.     bc 12,6,.L39
  43.     li 3,28
  44.     li 4,1
  45.     bl PPCAllocVec
  46.     mr. 28,3
  47.     bc 12,2,.L39
  48.     li 0,0
  49.     stw 0,8(1)
  50.     addi 3,1,8
  51.     bl PPCCreatePort
  52.     mr. 27,3
  53.     bc 12,2,.L37
  54.     li 31,0
  55.     cmplw 1,31,29
  56.     bc 4,4,.L41
  57.     li 30,0
  58. .L9:
  59.     mr 3,27
  60.     li 4,28
  61.     bl PPCCreateMessage
  62.     cmpwi 1,3,0
  63.     stwx 3,30,26
  64.     bc 12,6,.L7
  65.     addi 31,31,1
  66.     cmplw 1,31,29
  67.     addi 30,30,4
  68.     bc 12,4,.L9
  69. .L7:
  70.     cmplw 1,31,29
  71.     bc 12,4,.L34
  72. .L41:
  73.     li 31,0
  74.     addis 9,0,.LC0@ha
  75.     addi 11,9,.LC0@l
  76.     cmplw 1,31,29
  77.     lwz 0,.LC0@l(9)
  78.     lwz 9,4(11)
  79.     lwz 10,8(11)
  80.     lwz 8,12(11)
  81.     stw 0,0(28)
  82.     stw 9,4(28)
  83.     stw 10,8(28)
  84.     stw 8,12(28)
  85.     lwz 0,16(11)
  86.     lwz 9,20(11)
  87.     lwz 11,24(11)
  88.     stw 0,16(28)
  89.     stw 9,20(28)
  90.     stw 11,24(28)
  91.     bc 4,4,.L14
  92.     li 30,0
  93. .L16:
  94.     mr 3,25
  95.     mr 7,31
  96.     addi 31,31,1
  97.     mr 5,28
  98.     lwzx 4,30,26
  99.     li 6,28
  100.     bl PPCSendMessage
  101.     cmplw 1,31,29
  102.     addi 30,30,4
  103.     bc 12,4,.L16
  104. .L14:
  105.     li 31,0
  106.     cmplw 1,31,29
  107.     bc 4,4,.L19
  108.     lis 30,0xfff0
  109.     ori 30,30,4160
  110. .L20:
  111.     mr 3,27
  112.     bl PPCWaitPort
  113.     cmplw 1,31,29
  114.     bc 4,4,.L22
  115. .L25:
  116.     mr 3,27
  117.     bl PPCGetMessage
  118.     cmpwi 1,3,0
  119.     bc 12,6,.L22
  120.     addi 31,31,1
  121.     cmplw 1,31,29
  122.     bc 12,4,.L25
  123. .L22:
  124.     cmplw 1,31,29
  125.     stw 31,0(30)
  126.     bc 12,4,.L20
  127. .L19:
  128.     li 31,0
  129.     cmplw 1,31,29
  130.     bc 4,4,.L34
  131.     li 30,0
  132. .L30:
  133.     lwzx 3,30,26
  134.     cmpwi 1,3,0
  135.     bc 12,6,.L29
  136.     bl PPCDeleteMessage
  137. .L29:
  138.     addi 31,31,1
  139.     cmplw 1,31,29
  140.     addi 30,30,4
  141.     bc 12,4,.L30
  142. .L34:
  143.     mr 3,27
  144.     bl PPCDeletePort
  145.     extsh 3,3
  146.     cmpwi 1,3,0
  147.     bc 12,6,.L34
  148. .L37:
  149.     mr 3,28
  150.     bl PPCFreeVec
  151. .L39:
  152.     mr 3,26
  153.     bl PPCFreeVec
  154. .L40:
  155.     lwz 0,132(1)
  156.     mtlr 0
  157.     lwz 25,100(1)
  158.     lwz 26,104(1)
  159.     lwz 27,108(1)
  160.     lwz 28,112(1)
  161.     lwz 29,116(1)
  162.     lwz 30,120(1)
  163.     lwz 31,124(1)
  164.     addi 1,1,128
  165.     blr
  166. .Lfe1:
  167.     .size     main,.Lfe1-main
  168.     .align 2
  169.     .globl printf
  170.     .type     printf,@function
  171.     .long 0x404c
  172. printf:
  173.     stwu 1,-32(1)
  174.     mflr 0
  175.     stw 28,16(1)
  176.     stw 29,20(1)
  177.     stw 30,24(1)
  178.     stw 31,28(1)
  179.     stw 0,36(1)
  180.     mr 28,3
  181.     addis 9,0,MyFile@ha
  182.     lwz 29,MyFile@l(9)
  183.     bl strlen
  184.     mr 5,3
  185.     mr 4,28
  186.     mr 3,29
  187.     bl PPCWrite
  188.     lwz 0,36(1)
  189.     mtlr 0
  190.     lwz 28,16(1)
  191.     lwz 29,20(1)
  192.     lwz 30,24(1)
  193.     lwz 31,28(1)
  194.     addi 1,1,32
  195.     blr
  196. .Lfe2:
  197.     .size     printf,.Lfe2-printf
  198.     .comm    MyFile,4,4
  199.     .comm    DataArray,40,4
  200.     .comm    TextBuffer,500,1
  201.     .ident    "GCC: (GNU) 2.7.2.1"
  202.